HBase伪集群模式安装

Catalogue
  1. 伪集群模式配置
  2. HBase的用户界面

同Hadoop安装,到
CDH版下载地址下载hbase。选择 hbase-1.0.0-cdh5.4.0.tar.gz

hbase伪分布式模式是基于hdfs环境的

因此,在安装hadoop的前提下,我们配置Hbase的伪分布式模式如下:

  • 1.下载并解压
  • 2.配置环境变量(可选)
1
2
3
4
5
6
vi ~/.bashrc
#添加
export PATH=$PATH:/opt/app/skyeye/hbase-1.0.0-cdh5.4.0/bin
. ~/.bashrc
#验证
hbase version

伪集群模式配置

  • 1.配置 conf/hbase-env.sh
    将JAVA_HOME变量设置为本机jdk路径。如下:
1
2
export JAVA_HOME=/opt/tools/jdk1.8.0_131  #配置本机的java安装根目录
export HBASE_MANAGES_ZK=true #配置使用hbase自带的zookeeper,不使用自己搭建的zookeeper

如果使用 export HBASE_MANAGES_ZK=true, 即配置不使用hbase自带的zookeeper,使用自己搭建的zookeeper

hbase可以使用自定义zookeeper管理,也可以使用自带的zookeeper。

  • 2.配置conf/hbase-site.xml
    修改hbase.rootdir,将其指向hdfs,并指定Hbase在HDFS上的存储路径。
    将hbase.cluster.distributed设置为true。
    添加zk的节点地址。如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<configuration>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<!--以下信息只有在使用自己搭建的zk时添加-->
<property>
<name>hbase.zookeeper.quorum</name>
<value>cdhnode1,cdhnode2,cdhnode3</value>
</property>
<!--默认为/tmp/目录下-->
<property>
<name>hbase.tmp.dir</name>
<value>/opt/app/skyeye/data/hbasetmp/</value>
</property>
</configuration>
  • 3.启动HBase

完成上述操作之后,启动HBase,需要先启动Hadoop。

启动及检查:

1
2
3
4
5
6
7
8
9
zbm@node3:~$ start-all.sh 

zbm@node3:~$ jps
9250 ResourceManager
9683 Jps
9365 NodeManager
9110 SecondaryNameNode
8935 DataNode
8795 NameNode

上述则Hadoop启动成功。

当前版本。使用start-all.sh启动hadoop时会提示以下信息,所以建议分别启动hdfs和yarn。

1
This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh

之后启动HBase,启动及检查

1
2
3
4
5
6
7
8
9
10
11
12
start-hbase.sh          # 启动Hbase

zbm@node3:~$ jps # 检查
3728 Jps
3123 HRegionServer
2407 NodeManager
1961 DataNode
2298 ResourceManager
3004 HMaster
1852 NameNode
2158 SecondaryNameNode
2943 HQuorumPeer

以上几个进程说明Hbase启动成功。

  • 4.Hbase操作

可以进入shell模式,通过命令行操作查看hbase数据库信息。

1
2
3
4
5
hbase shell    #进入shell模式
list # 查看当前数据库所有表信息
describe 'member' # 查看表结构
# 创建一个member表,其拥有member_id,address,info三个列族
create 'member','member_id','address','info'
  • 5.查看HDFS的HBase数据库文件
1
2
3
4
5
6
7
8
9
10
zbm@node3:~$ hadoop fs -ls /hbase
17/10/28 20:45:14 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Found 6 items
drwxr-xr-x - nova supergroup 0 2017-10-28 00:03 /hbase/.tmp
drwxr-xr-x - nova supergroup 0 2017-10-28 00:03 /hbase/WALs
drwxr-xr-x - nova supergroup 0 2017-10-28 00:03 /hbase/data
-rw-r--r-- 3 nova supergroup 42 2017-10-28 00:03 /hbase/hbase.id
-rw-r--r-- 3 nova supergroup 7 2017-10-28 00:03 /hbase/hbase.version
drwxr-xr-x - nova supergroup 0 2017-10-28 00:14 /hbase/oldWALs

  • 6.停止HBase
1
stop-hbase.sh    #停止Hbase

问题:停止hbase时,HRegionServer进程不能停止。会导致下次启动hbase时出错。

原因:

HBase的用户界面